package com.sugar.real.estate.module.business.controller.admin.buildhouse.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.sugar.real.estate.module.business.config.convert.UrlsStrImageConverter;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

@Schema(description = "管理后台 - 建房 Response VO")
@Data
@ExcelIgnoreUnannotated
public class BuildHouseRespVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "7571")
    @ExcelProperty("主键")
    private Long id;

    @Schema(description = "位置中文", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("位置中文")
    private String locationZhCn;

    @Schema(description = "位置英文", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("位置英文")
    private String locationEnUs;

    @Schema(description = "图片（多个逗号分隔）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty(value = "房屋图片", converter = UrlsStrImageConverter.class)
    private List<String> showImages;

    @Schema(description = "土地面积（单位：㎡）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("土地面积（单位：㎡）")
    private BigDecimal landArea;

    @Schema(description = "内容中文详情", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("内容中文详情")
    private String contentZhCn;

    @Schema(description = "内容英文详情", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("内容英文详情")
    private String contentEnUs;

    @Schema(description = "关联的设计方案")
    @ExcelIgnore
    private List<Long> planIds;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

}